import { importFile } from '@/api/authority/public'
import { message } from 'ant-design-vue'
/**
 * exprotFileExcel将二进制流转成excel文件
 * data:文件
 * name:文件名
 */
export function exprotFileExcel(data, name = '表格') {
  const blob = new Blob([data], { type: 'application/vnd.ms-excel' })
  const fileName = `${name}.xlsx`
  const linkNode = document.createElement('a')
  linkNode.download = fileName // a标签的download属性规定下载文件的名称
  linkNode.style.display = 'none'
  linkNode.href = URL.createObjectURL(blob) // 生成一个Blob URL
  document.body.appendChild(linkNode)
  linkNode.click() // 模拟在按钮上的一次鼠标单击
  URL.revokeObjectURL(linkNode.href) // 释放URL 对象
  document.body.removeChild(linkNode)
}

// 上传图片
export async function importImgFile(fileItem, type = '图片上传') {
  const file = new FormData()
  file.append('file', fileItem)
  file.append('bizType', type)
  const { data } = await importFile(file)
  return data.url
}

// 验证图片文件上传
export function beforeUpload(file) {
  return new Promise((resolve, reject) => {
    var testmsg = /^image\/(jpeg|png|jpg)$/.test(file.type)
    const isLt1M = file.size / 1024 / 1024 <= 1 // 图片大小不超过2MB
    if (!testmsg) {
      message.error('上传图片格式不对!')
      return reject(false)
    }
    if (!isLt1M) {
      message.error('上传图片大小不能超过 1M!')
      return reject(false)
    }
    return resolve(true)
  })
}
